-
Notifications
You must be signed in to change notification settings - Fork 220
Fix radxa zero #512
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: linux-6.17.1
Are you sure you want to change the base?
Fix radxa zero #512
Conversation
On some hardware designs, the 5V VBUS output cannot be controlled or disabled by the TCPM (e.g., fixed 5V supply or lack of a load switch). Consequently, the VBUS voltage is unable to drop to the VSafe0V level required by the standard state machine. Currently, the TCPM blocks the transition from SRC_STARTUP to SRC_ATTACHED until VSafe0V is detected. On hardware that cannot switch off VBUS, this causes the port to hang or fail negotiation. This patch adds a new device property "tcpm,skip-vsafe0v-check". When set, the TCPM ignores the VSafe0V requirement and allows the state machine to proceed, enabling support for hardware with uncontrollable VBUS. Signed-off-by: Jiali Chen <chenjiali@radxa.com>
On some hardware designs where the 5V VBUS is fixed (always on) or cannot be controlled by the FUSB302, the TCPM state machine may hang during the transition to SRC_ATTACHED. Normally, when TCPM instructs the driver to enable VBUS, it waits for a VBUS_PRESENT signal from the port driver. However, if VBUS is already physically present (because it's hardwired), the FUSB302 does not generate a new interrupt or status change, causing the TCPM to time out waiting for VBUS. This patch introduces a new device property "fcs,force-vbus-toggle". When set, the driver manually toggles the internal VBUS presence state and notifies the TCPM during the VBUS enabling phase. This simulates a VBUS rising edge, satisfying the state machine's requirement to proceed. Signed-off-by: Jiali Chen <chenjiali@radxa.com>
Enable the FUSB302 USB Type-C controller on the Radxa Zero board. The FUSB302 is connected via I2C3 and handles the CC communication. Since the VBUS on this board is derived from the system 5V and cannot be independently switched off or regulated to 0V, we configure the node with specific properties to handle this hardware limitation: - 'tcpm,skip-vsafe0v-check': To bypass the VSafe0V requirement. - 'fcs,force-vbus-toggle': To simulate VBUS toggle for the TCPM state machine. This patch also: - Adds the fixed 5V VBUS regulator. - Adds a GPIO-based SBU mux for orientation switching. - Links the DWC3 USB controller to the Type-C connector via OF graph. - Configures the port as a Source (Power) and Host (Data) by default. Signed-off-by: Jiali Chen <chenjiali@radxa.com>
Add the device tree node for the green status LED found on the Radxa Zero. The LED is connected to GPIOAO_10 and is configured to use the 'heartbeat' trigger by default to indicate system activity. Signed-off-by: Jiali Chen <chenjiali@radxa.com>
| led-green { | ||
| color = <LED_COLOR_ID_GREEN>; | ||
| function = LED_FUNCTION_STATUS; | ||
| gpios = <&gpio_ao GPIOAO_10 GPIO_ACTIVE_HIGH>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
有两个版本的LED引脚,之前是都配成LED,用户要用额外的GPIO再去用overlay关无效的那个
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
那就先不主动设置led了?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
噢噢,两个都配置
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个pr先关了,我合并到6.18分支去
No description provided.